package com.service;

import com.service.runable.ServiceThread;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.ArrayList;

/**
 * 启动服务器的类
 */
public class MangerSercie {
    public static void main(String[] args) {
        //用来存放所有的socket
        ArrayList<Socket> list=new ArrayList<Socket>();
        //用来实现读写客户端的类
        ServiceThread st=new ServiceThread();
        //用来记录客户端编号
        int i=0;
        try {
            //服务端socket绑定到本机端口上
            ServerSocket socket=new ServerSocket(2345);
            //死循环提供多个连接访问，注意这里socket有阻塞循环的作用
            while(true){

                i++;
                //获取远程传来的socket
                Socket sok = socket.accept();
                //把获取到的socket添加到集合，方便后面把接收到的内容传递到各个客户端
                list.add(sok);
                //启动服务端的线程
                new ServiceThread(sok,list,i).start();
            }



        } catch (IOException e) {
            e.printStackTrace();
        }

    }

}
